package com.scheduled.demo.scheduled;

import java.lang.annotation.*;

/**
 *redis分布式锁定时任务注解类
 * @description:
 * @author: chenjianshuo
 * @create: 2019-08-26 14:13
 **/
@Target({ElementType.METHOD,ElementType.ANNOTATION_TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface RedisScheduled {
    /**
     * 不填写默认取方法名
     * @return
     */
    String lockKey() default "";

    String lockValue() default "加锁资源";

    /**
     * 默认120s
     *
     * @return
     */
    long expire() default 60 * 1000 * 2;

    /**
     * 锁粒度
     *
     * 如果定时任务是秒级别,锁粒度设置为ddHHmmss
     * 如果是分级别，则用默认的
     * @return
     */
    String pattern() default "ddHHmm";

}
